package com.leon.learnenginespace.drools.dao;

import com.leon.learnenginespace.drools.pojo.TDrlRuleColumnConfig;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface RuleConfigParamMapper {

    /**
     * 查找规则是否存在
     * @param tDrlRuleColumnConfig
     * @return
     */
    int queryRuleID(TDrlRuleColumnConfig tDrlRuleColumnConfig);

    /**
     * 查找规则配置参数列表
     * @param tDrlRuleColumnConfig
     * @return
     */
    List<TDrlRuleColumnConfig> queryTdrlRuleConfigParam(TDrlRuleColumnConfig tDrlRuleColumnConfig);

    /**
     * 新增规则配置参数
     * @param tDrlRuleColumnConfig
     * @return
     */
    int tDrlRuleColumnConfigCreat(TDrlRuleColumnConfig tDrlRuleColumnConfig);

    /**
     * 查找规则参数在该条规则中是否存在
     * @param tDrlRuleColumnConfig
     * @return
     */
    Map<Object, Long> queryRuleColumnConfigParam(TDrlRuleColumnConfig tDrlRuleColumnConfig);

//    /**
//     * 查找修改后的规则参数在该条规则中是否存在，并返回id
//     * @param tDrlRuleColumnConfig
//     * @return
//     */
//    int queryParamID(TDrlRuleColumnConfig tDrlRuleColumnConfig);

    /**
     * 删除规则配置参数
     * @param tDrlRuleColumnConfig
     * @return
     */
    int deleteRuleColumnConfig(TDrlRuleColumnConfig tDrlRuleColumnConfig);

    /**
     * 判断规则参数是否有修改
     * @param tDrlRuleColumnConfig
     * @return
     */
    int queryIDAndParam(TDrlRuleColumnConfig tDrlRuleColumnConfig);

    /**
     * 更新规则配置参数
     * @param tDrlRuleColumnConfig
     * @return
     */
    int tDrlColumnConfigUpdate(TDrlRuleColumnConfig tDrlRuleColumnConfig);

}
